/**
 * 
 */
package com.lanswon.qzsmk.service.systemManageService;

import javax.jws.WebParam;
import javax.jws.WebService;

import com.lanswon.qzsmk.base.DwzPage;
import com.lanswon.qzsmk.exception.ApplicationException;
import com.lanswon.qzsmk.model.Org;
import com.lanswon.qzsmk.vo.BranchVo;
import com.lanswon.qzsmk.vo.ResultVo;
import com.lanswon.qzsmk.vo.SaveOrUpdateBranchVo;

/**
 * @author sun
 *
 */
@WebService
public interface BranchManageService {


	/**
	 * 添加网点 
	 * @param b
	 * @return 网点id,网点no
	 * @throws ApplicationException
	 */
	int[] addBranch(SaveOrUpdateBranchVo b)throws ApplicationException;
	
	/**
	 * 修改网点
	 * @param b
	 */
	void modifyBranch(SaveOrUpdateBranchVo b);

	/**
	 * 分页查询
	 * @param t
	 * @return
	 */
	DwzPage<Org> queryBranchByName(BranchVo t);
	
	/**
	 * 查询
	 * @param branchId 网点id
	 * @return 网点信息
	 */
	SaveOrUpdateBranchVo queryBranchByNo(int branchNo) throws Exception;
	
	
	/**
	 * 根据机构编号查询
	 * @param orgNo
	 * @return
	 */
	Org queryOrgByNo(int orgNo);
	
	/**
	 * 根据姓名查询该网点是否存在
	 * @param orgName
	 * @return
	 */
	boolean  checkIsRepeatByName(String orgName)throws ApplicationException;
	
	/**
	 * 查询所有网点的所在街道
	 * @return <街道id,街道具体地址>
	 */
	public ResultVo queryAllBranchStreet();
	
	/**
	 * 查询所有网点性质
	 * @return <机构性质id,机构性质>
	 */
	public ResultVo queryOrgProperty();
	
	/**
	 * 查询所有网点	互联网用
	 * @return
	 */
	public ResultVo queryBranchInternet(String streetId,String orgProperty,String serverType);
	
	/**
	 * 查询所有网点	系统内部用
	 * @return
	 */
	public ResultVo queryBranch(String streetId,String orgProperty);
	
	/**
	 * 根据网点名称查询网点信息
	 * @param branchName
	 * @return
	 */
	public ResultVo queryOrgByName(String branchName);
	
	/**
	 * 查询网点的服务类型
	 * @return
	 */
	ResultVo queryOrgServerType();
	
	/**
	 * 查询网点所属单位
	 * @return
	 */
	ResultVo queryOrgCorp();
}
